<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script>
        // 展开运算符: ... 
        // 展开数组
        // var arr = [1,2,3,4];
        // var arr2 = [5];

        // var arr = [3,1,2,5,4]
        // var res = Math.max(...arr);
        // console.log(res);

        // 可以把伪数组转成数组;
        function fn(){
            // 1. 通过Array.from来把伪数组转数组
            var arr = Array.from(arguments);
            console.log(arr);
            // 2. 通过展开运算符 来转换
            var arr = [...arguments];
            console.log(arr);
        }
        fn(1,2,3);


        let lis = document.getElementsByTagName('li');// 不能删除分号,因为...展开运算符为一行,需用;隔开;否则报错
        [...lis].forEach(function(item){
            item.onclick = function(){
                console.log(111);
            }
        })


        // 处理不定参数 , rest剩余参数
        // 不定参
        function fn(a,...args){
            console.log(args);
        }
        fn(1,2,3,4);


        // 对象的展开
        // 合并对象,合并配置
        // let obj1 = {name:'张三'};
        // let obj2 = {age:20};
        // var obj = {...obj1,...obj2};
        // console.log(obj);


        // 字符串的展开
        // var str = 'dsdasdad'
        // var arr = [...str];
        // console.log(arr);



    </script>
</body>
</html>